package com.enjoyor.soa.traffic.api.serverpush.server.dubbo;

import com.alibaba.fastjson.JSONObject;
import com.enjoyor.soa.traffic.util.pojo.ResultPojo;

public interface DubboServerPushService {
    /**
     * 获取客户端连接的基地址
     * 
     * @deprecated 弃用，请使用 {@link #getJsPath()}.
     */
    public ResultPojo getBasePath();

    /**
     * 获取客户端js
     */
    public ResultPojo getJsPath();

    /**
     * 向客户端推送消息
     * 
     * @param namespace
     *            通道
     * @param message
     *            消息。<s>注意：message中不要含有自定义的java对象，而应转换为String,int,Ineger,Date,Map等
     *            java自带对象</s>(已修正)
     * @return ResultPojo.resultList 推送的客户端数(可能不准确，因IE等不支持WebSocket的客户端使用JSONP
     *         Polling，关闭后需超时才下线)
     */
    public ResultPojo pushMessage(String namespace, JSONObject message);

    public ResultPojo pushMessage(String namespace, String event, JSONObject message);
}
